home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Games Collection 1 / software vault.zip / software vault / CDR10 / SPX20.ZIP / SPX_INT.ZIP / SPX_SND.INT < prev    next >
Text File  |  1993-09-14  |  2KB  |  51 lines

  1. Unit spx_snd;
  2.  
  3. {$X+,O+ }
  4. { SPX Library Version 2.0  Copyright 1993 Scott D. Ramsay }
  5. { NOTE: Do not use this unit with SPX_TIM.TPU             }
  6.  
  7. Interface
  8.  
  9. Uses crt,dos,spx_ems,spx_fnc;
  10.  
  11. type
  12.   Psound    = ^Tsound;
  13.   Tsound    = object
  14.                 sblk    : pointer;
  15.                 size,
  16.                 sport   : word;
  17.                 sb_play : boolean;
  18.                 constructor init(sndfile:string;prt:word;_sb:boolean);
  19.                 function loadsnd(sndfile:string;prt:word;_sb:boolean):boolean; virtual;
  20.                 function filesnd(var fil:file;bsize,prt:word;_sb:boolean):boolean; virtual;
  21.                 procedure cleansnd; virtual;
  22.                 procedure play(canstop:boolean); virtual;
  23.                 procedure stop; virtual;
  24.                 destructor done; virtual;
  25.               end;
  26.   PEmsSound = ^TEmsSound;
  27.   TEmsSound = object(Tsound)
  28.                 EMSseg,handle : word;
  29.                 EMSok         : boolean;
  30.                 constructor init(sndfile:string;prt:word;_sb:boolean);
  31.                 function loadsnd(sndfile:string;prt:word;_sb:boolean):boolean; virtual;
  32.                 procedure cleansnd; virtual;
  33.                 procedure play(canstop:boolean); virtual;
  34.                 destructor done; virtual;
  35.               end;
  36.   UserProc  = procedure;
  37.  
  38. var
  39.   cs,playing  : boolean;
  40.   f_clk,s_clk : array[0..3] of word;
  41.   rate,cntime : word;
  42.   f_userclk,
  43.   s_userclk   : userproc;
  44.  
  45. function SBFindBase:word;
  46. function SBReset(BaseAddr : word) : boolean;
  47. procedure globalstop;
  48. procedure setrate(cycles:word);
  49. procedure wait(seconds,which:integer);
  50.  
  51.